草庐IT

c++ - MBCS 到 UTF-8 C++

全部标签

c - Ruby 解释器的嵌入 API 的文档在哪里?

关闭。这个问题不符合StackOverflowguidelines.它目前不接受答案。我们不允许提问寻求书籍、工具、软件库等的推荐。您可以编辑问题,以便用事实和引用来回答。关闭5年前。Improvethisquestion我正在寻找有关将Ruby解释器嵌入到C或C++程序以及用于该目的的API的全面的在线文档资源。Pickaxe书中关于此的部分非常好,但我的版本指的是Ruby1.8,我对当前的ruby​​版本范围很感兴趣,即1.8.x、1.9.x和2.0,并且有很多跨该版本范围的嵌入处理之间的差异。作为引用,有问题的Ruby解释器是来自http://www.ruby-lang.org/

ruby-on-rails - 使用带有无效字符的 Net::FTP gettextfile(ASCII-8BIT 与 UTF-8)

我有一个通过FTP从大型机获取平面文件的进程。这通常工作正常,但有时文件会包含一些重音字符。如果我尝试获取包含口音的文件,整个过程会失败并出现以下错误:Encoding::UndefinedConversionError:"\x88"fromASCII-8BITtoUTF-8那是使用Net::FTP的gettextfile方法。许多人建议简单地切换到getbinaryfile-这样做将允许我下载文件,但生成的文件是我无法再解析的东西(说它是UTF-8,但内容使没有意义)。有没有什么方法可以简单地获取文件并将其保存为ASCII,而无需让Rails自动将输出转换为UTF-8?这是我的代码:

ruby-on-rails - Ruby 2.2:PG::CharacterNotInRepertoire:错误:编码 "UTF8"的无效字节序列

我正在升级Rails4.1应用程序以使用Ruby2.2。在升级期间,事实证明该应用程序使用了旧版本的pggem(0.12),并且gem没有使用Ruby2.2安装。所以我尝试使用更新版本的pggem(0.17.1)。现在在系统中创建新用户时有时会出现以下错误:PG::CharacterNotInRepertoire:ERROR:invalidbytesequenceforencoding"UTF8"Ruby2.2和Postgres是否存在任何已知问题?看起来应用程序配置为使用unicode:config.encoding="utf-8"在application.rb中设置,encodin

ruby-on-rails - 编码::UndefinedConversionError: "\xE4"从 ASCII-8BIT 到 UTF-8

我试图获取这个CSV-File使用Net::HTTP。File.open(file,"w:UTF-8")do|f|content=Net::HTTP.get_response(URI.parse(url)).bodyf.write(content)end再次读取我的本地csv文件后,我得到了一些奇怪的输出。Nationalit\xE4t;Alter0-5我尝试将其编码为UTF-8,但出现错误Encoding::UndefinedConversionError:"\xE4"fromASCII-8BITtoUTF-8rchardetgem告诉我内容是ISO-8859-2。但转换为UTF-8

Ruby on Rails 上传文件问题 奇数 utf8 转换错误

我正在尝试上传文件,但出现以下错误:"\xFF"fromASCII-8BITtoUTF-8我非常关注Rails指南的工作。这是我正在使用的代码。file=params[:uploaded_file]File.open(Rails.root.join('public','images',file.original_filename),'w')do|f|f.write(file.read)end我不明白为什么它不起作用。我做错了什么?更新--这是应用程序跟踪app/controllers/shows_controller.rb:16:in`write'app/controllers/sho

c - Ruby C 扩展开发人员的命名约定

在用C为ruby​​编写扩展时,我对遵循正确的命名约定很感兴趣。具体来说,我指的是将_p添加到谓词的函数名称以及为变量添加前缀m代表模块,c代表类等等。例如,如果我们想在C语言中定义一个像下面这样的谓词方法,我们应该在定义该方法的函数中使用_p作为后缀。classMyClassdefawesome?trueendend在C中:staticVALUEmy_extension_my_class_awesome_p(VALUEself){returnQtrue;}voidInit_my_extension(void){VALUEcMyClass=rb_define_class("MyClas

ruby-on-rails - 如何在 ruby​​ 中使用 utf8 的正则表达式

在RoR中,如何使用utf8代码验证中文或日文单词用于发布表单。在GBK编码中,它使用[\u4e00-\u9fa5]+来验证中文单词。在Php中,它使用/^[\x{4e00}-\x{9fa5}]+$/u用于utf-8页面。 最佳答案 Ruby1.8对UTF-8字符串的支持很差。您需要在正则表达式中单独编写字节,而不是完整的代码:>>"acentuação".scan(/\xC3\xA7/)=>["ç"]要匹配您指定的范围,表达式会变得有点复杂:/([\x4E-\x9E][\x00-\xFF])|(\x9F[\x00-\xA5])/#

Ruby:按字节长度限制 UTF-8 字符串

ThisRabbitMQpage状态:Queuenamesmaybeupto255bytesofUTF-8characters.在ruby​​(1.9.3)中,如何按字节数截断UTF-8字符串而不在字符中间中断?生成的字符串应该是符合字节限制的最长可能的有效UTF-8字符串。 最佳答案 对于Rails>=3.0,你有ActiveSupport::Multibyte::Chars限制方法。来自API文档:-(Object)limit(limit)将字符串的字节大小限制为字节数而不破坏字符。当由于某种原因字符串的存储空间有限时可用。例子

ruby - String#encode 未修复 "invalid byte sequence in UTF-8"错误

我知道有很多关于此错误的类似问题,而且我已经尝试了很多,但都没有成功。我遇到的问题涉及字节\xA1并且正在抛出ArgumentError:invalidbytesequenceinUTF-8我尝试了以下但没有成功:"\xA1".encode('UTF-8',:undef=>:replace,:invalid=>:replace,:replace=>"").sub('','')"\xA1".encode('UTF-8',:undef=>:replace,:invalid=>:replace,:replace=>"").force_encoding('UTF-8').sub('','')"

c - 奇怪的 "half to even"不同语言的舍入

按照目前的情况,这个问题不适合我们的问答形式。我们希望答案得到事实、引用或专业知识的支持,但这个问题可能会引发辩论、争论、投票或扩展讨论。如果您觉得这个问题可以改进并可能重新打开,visitthehelpcenter指导。关闭10年前。GNUbash,版本4.2.24:$>printf"%.0f,%.0f\n"48.549.548,50ruby1.8.7>printf("%.0f,%.0f\n",48.5,49.5)48,50Perl5.12.4$>perl-e'printf("%.0f,%.0f\n",48.5,49.5)'48,50海湾合作委员会4.5.3:>printf("%.0